package visualizer;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

public class Colorpalette {

	private HashMap<String, String> assignedColors;
	private List<String> colors;
	
	public Colorpalette() {
		assignedColors = new HashMap<String, String>();
		colors = new ArrayList<String>();
		setColors();
	}
	
	public String getColor(String name) {
		if(assignedColors.containsKey(name)) {
			return assignedColors.get(name);
		}
		else {
			String s = getNextColor();
			assignedColors.put(name, s);
			return s;
		}
	}
	
	private void setColors() {
		colors.add("#FF8C00");
		colors.add("#4682B4");
		colors.add("#9932CC");
		colors.add("#008B8B");
		colors.add("#808000");
		colors.add("#DB7093");
		colors.add("#D2691E");
		colors.add("#48D1CC");
		colors.add("#DDA0DD");
		colors.add("#8FBC8F");
		colors.add("#F4A460");
		colors.add("#708090");
		colors.add("#00FF00");
		colors.add("#0000FF");
		colors.add("#FFA500");
		colors.add("#9ACD32");
		colors.add("#2F4F4F");
		colors.add("#FFFF00");
		colors.add("#800000");
		colors.add("#006400");
		colors.add("#00008B");
	}
	
	private String getNextColor() {
		return colors.remove(0);
	}
}
